The present invention relates to a decoding apparatus for decoding picture data coded in a high efficiency.
As is well known, there have been proposed various high efficiency compression methods of transmitting, recording and reproducing video signals compressed in high efficiency. At present, as a practical high efficiency compression method of picture data, a method of combining three different compressing means with one another has been proposed. Here, the three different means are: (1) data quantity compression on the basis of the correlation in a picture (intra-frame) such that correlation is high between adjacent pixels in a natural picture (i.e., data quantity compression on the basis of the spacial correlation); (2) data quantity compression on the basis of the correlation between frames (inter-frame) arranged on the time axis (i.e., data quantity compression on the basis of the time correlation); and (3) data quantity compression on the basis of deviation of code generation probability. As the compressing means of compressing picture data quantity on the basis of the correlation in picture (intra-frame), although various methods have been proposed, recently orthogonal transformation has been widely adopted, which are represented by Karhunen-Loeve transformation, discrete cosine transformation (DCT), discrete Fourier transformation, Walsh-Hadamard transformation, etc.
For instance, in a high efficiency picture data coding system (referred to as MPEG1 and MPEG2, sometimes) proposed as an international standard by MPEG (Moving Picture Coding Expert Group) established under ISO (international standard organization), moving picture data are coded in a high efficiency under motion compensation prediction and inter-frame prediction obtained by combining the inter-frame coding method and the intra-frame coding method. In this case, the two-dimensional discrete cosine transformation (two dimensional DCT) has been widely adopted as the orthogonal transformation. Further, the orthogonal transformation and inverse orthogonal transformation are executed in unit of block. For instance, in the case of video signals to be coded in a high efficiency where each picture is composed of 352 pixels arranged in horizontal direction and 288 pixels arranged in vertical direction in common intermediate format (CIF), the unit block of a predetermined block size is 16.times.16 pixels, that is, 16 pixels in horizontal direction and 16 lines in vertical direction in the MPEG1 system and MPEG2 system. In summary, the above-mentioned transformations are executed for video signals divided for each so-called macro-block.
Further, in the above-mentioned MPEG system, the picture coded data are obtained by adding predetermined headers to digital data in which three frames of different picture modes are arranged on the time axis in accordance with a predetermined arrangement mode. Here, the three frames of different picture modes as different prediction methods are (1): intra-picture frame (referred to as I frame, hereinafter) obtained by compressing picture data in accordance with the intra-frame prediction; (2) predicted picture frame (referred to as P frame, hereinafter) obtained by compressing picture data in accordance with the inter-frame prediction on the basis of the past frame picture data; and (3) bi-directional prediction picture frame (referred to as B frame, hereinafter) obtained by compressing picture data in accordance with the inter-frame prediction on the basis of both the past frame picture data and the future frame picture data. Further, since the MPEG system is also standardized in CCIR (ITU-R), the MPEG system will be described hereinbelow as an example of the high efficiency compression method.
In the MPEG system, the relationship among the data compression ratio X of the I frame, that Y of the P frame and that Z of the B frame is in most cases X&lt;Y&lt;Z, when the reproduction is started from a sequence header at an entry point. This relationship is established due to the fact that the B frame picture data is predicted on the basis of both the past and future frame picture data. It is thus necessary to record the future P frame picture data used for predicting the B frame picture data, before the B frame data.
FIGS. 1(a) to 1(f) are illustrations for assistance in explaining the arrangement (e.g., on an optical disk) of moving picture data compressed in a high efficiency by the MPEG system in accordance with CD (compact disk) standard. FIG. 1(b) shows the arrangement of recorded data related to high efficiency coded moving picture data at each sector on the optical disk in accordance with the CD (compact disk) standard. FIG. 1(a) shows the data contents of one GOP (group of pictures) separated and located after each MPEG system header recorded in each sector as shown in FIG. 1(b). In the GOP shown in FIG. 1(a), data are arranged in the order of a sequence header (SEQ), a GOP header (GOP), and sequential picture frames (I, P, and B frames). Further, FIGS. 1(c) to 1(f) show the practical contents of the MPEG system headers, in which PTS and DTS denote a time stamp, respectively.
In the MPEG system, picture data can be coded and decoded by the encoders and decoders, respectively in a high efficiency. In the case of the video signals for each picture composed of 288 pixels arranged in the vertical direction and 352 pixels arranged in the horizontal direction, that is, [N pixels in the vertical and M pixels in the horizontal], the orthogonal and inverse orthogonal transformations are executed for each macro block of 16.times.16 pixels, as already explained. Further, the decoded picture data are displayed for each picture unit (called as "slice" in MPEG) of 16 lines arranged in the vertical direction and 352 pixels arranged in the horizontal direction, that is, [.alpha. pixels in the vertical.times.M pixels in the horizontal (.alpha.: two or more)].
FIG. 2 is a block diagram showing a conventional decoding apparatus for decoding picture data of each picture composed of 288 pixels arranged in the vertical direction and 352 pixels arranged in the horizontal direction. The apparatus decodes the picture data in a high efficiency in accordance with the MPEG system so that the decoded picture data can be displayed at any desired picture size.
In the decoding apparatus as shown in FIG. 2, picture data (a bit stream) coded in a high efficiency by a MPEG system are supplied to an input terminal 1, the supplied picture data to be decoded are stored in a bit stream buffer memory of a buffer memory 3 via MPEG decoder 2. Further, any required bit stream composed of the I frames, P frames and B frames all stored in the bit stream buffer of the buffer memory 3 are read therefrom and then decoded on the basis of the decoding operation of the MPEG decoder 2. The picture data of each decoded frame are written in MPEG frame buffers (I frame buffer, P frame buffer, and B frame buffer) of the buffer memory 3, respectively, as shown in FIG. 3(a), in the order of the I1 frame picture data, P4 frame picture data, B2 frame picture data, B3 frame picture data, P7 frame picture data, B5 frame picture data, B6 frame picture data, P8 frame picture data, . . . .
The decoded picture data of the I frames, P frames, and B frames written in the MPEG frame buffer of the buffer memory 3 are read by the MPEG decoder 2 and then outputted, as shown in FIG. 3(b), in the order of the I1 frame picture data, B2 frame picture data, B3 frame picture data, P4 frame picture data, B5 frame picture data, B6 frame picture data, P7 frame picture data, . . . . Further, the read picture data are stored in sequence in a picture size enlarging and reducing (P. S. E. R.) frame buffer memory 5 via picture size enlarging and reducing (P. S. E. R.) processor 4, as shown in FIG. 3(c), in the order of the I1 frame picture data, B2 frame picture data, B3 frame picture data, P4 frame picture data, B5 frame picture data, B6 frame picture data, P7 frame picture data, . . . . As described above, the picture data for each frame outputted from the MPEG decoder 2 are the pixel data for displaying each picture composed of 288 pixels in the vertical.times.352 pixels in the horizontal.
The pixel data for displaying each picture composed of 288 pixels long.times.352 pixels broad includes a total data quantity of 152.064 kbyte composed of 352.times.288 data of luminance signal components and 352.times.288/2 data of two chrominance signal components. Further, in general, a frame buffer for storing one-frame data quantity is provided for each of the I frames, P frames and B frames.
Here, the sequential one-frame picture data of the bit stream stored in the bit stream buffer memory of the buffer memory 3 are decoded in sequence by the decoding operation of the MPEG decoder 2, written in the MPEG frame buffer of the buffer memory 3, and read from the MPEG frame buffer. Therefore, the above-mentioned operation will be described in more practical way for each one-frame period of the sequential one frame, as denoted by frame #1, frame #2, frame #3, frame #4, . . . on the lowermost side in FIG. 3.
During the one-frame period of the frame #1, the picture data of the I1 frame of the bit stream decoded by the decoding operation of the MPEG decoder 2 are written in the I frame buffer memory of the MPEG frame buffer memory, as shown in FIG. 3(a). Successively, during the one-frame period of the frame #2, the picture data of the P4 frame of the bit stream decoded by the decoding operation of the MPEG decoder 2 are written in the P frame buffer memory of the MPEG frame buffer memory, as shown in FIG. 3(a). Successively, during the one-frame period of the frame #3, the picture data of the B2 frame of the bit stream decoded by the decoding operation of the MPEG decoder 2 are written in the frame buffer memory of the MPEG frame buffer memory, as shown in FIG. 3(a). At the same time, the I1 frame picture data are read from the I frame buffer memory of the MPEG frame buffer memory, as shown in FIG. 3(b), and then outputted from the MPEG decoder 2. Further, in the ordinary decoding operation, although the decoding time of the picture data for each frame is shorter or longer than one frame, here the decoding time of the picture data for each frame is assumed to be the same as a time corresponding to one frame for explanation.
Further, during the one-frame period of the frame #4, the picture data of the B2 frame are read form the B frame buffer memory of the MPEG frame buffer memory, as shown in FIG. 3(b), and then outputted from the MPEG decoder 2. Further, the picture data of the B3 frame of the bit stream decoded by the decoding operation of the MPEG decoder 2 are written in the B frame buffer memory of the MPEG frame buffer memory, as shown in FIG. 3(a). In the same way as above, during the one-frame period of the frame #5 and after, the picture data of the frame are read from the frame buffer memory of the MPEG frame buffer memory and then written in the same frame buffer memory.
In the above-mentioned one-frame period from the frames #1 to #4, since the picture data are read from and written in the MPEG frame buffers of different frames (I, P and B frames) during one-frame period from the frames #1 to #3, there arises no problem. Further, in the case of the one-frame period of frame #4 (the same in the one-frame period of the frame #7 in FIG. 3), since the picture data are read from and written in the B frame buffer memory, it is necessary to read the picture data of the B2 frame from the buffer memory before the picture data of the B3 frame are written. In the conventional decoding apparatus as shown in FIG. 2, however, since the picture data of one-frame are always outputted from the MPEG decoder 2, a predetermined time after the B2 frame picture data have been read from the MPEG frame buffer memory, the B3 frame picture data are started to be written in the frame buffer memory 3, with the result that no problem arises.
Therefore, in the conventional decoding apparatus as shown in FIG. 2, the picture data for each frame outputted in sequence from the MPEG decoder 2 are written in sequence in the picture size enlarging and reducing frame buffer memory 5 via the picture size enlarging and reducing processor 4, as shown in FIG. 3(c). The picture size enlarging and reducing processor 4 reads the picture data stored in the picture size enlarging and reducing frame buffer memory 5, in the order of the I1 frame, B2 frame, B3 frame, P4 frame, B5 frame, B6 frame, P7 frame, . . . as shown in FIG. 3(d). Then, the picture size enlarging and reducing processor 4 executes various processing such as picture data reduction, interpolation, etc. so that the processed picture data can be displayed in any of the modes of original size picture, reduced size picture and enlarged size picture in accordance with data indicative of the picture display mode determined by the user through an operating section (not shown). Therefore, the picture data can be outputted from an output terminal 6 to display picture of a predetermined size.
As described above, in the conventional decoding apparatus shown in FIG. 2, since the picture data for each frame outputted in sequence from the MPEG decoder 2 are written in sequence in the picture size enlarging and reducing frame buffer memory 5 via the picture size enlarging and reducing processor 4; and further the picture size enlarging and reducing processor 4 reads the picture data from the picture size enlarging and reducing frame buffer memory 5 and executes various processing such as picture data reduction, interpolation, etc. Here, a capacity large enough to store picture data of at least two frames is required for the picture size enlarging and reducing buffer memory 5. As a result, there exists a problem in that it is impossible to provide the decoding apparatus at a low cost.
To overcome this problem, without using the frame buffer memory of a large storage capacity, a method of using an economical line buffer memory as the buffer memory for enlarging and reducing the picture size has been tried.
On the other hand, when a picture of any desired size is displayed; that is, when an original picture is reduced, for instance, the relationship between an original picture and a reduced picture will be explained herein with reference to in FIGS. 4A to 4D, in which an original picture F is shown in FIG. 4A; a picture Fr reduced in both vertical and horizontal directions is shown in FIG. 4B; a picture Fv reduced in only the vertical direction is shown in FIG. 4C; and a picture Fr obtained by further reducing the picture Fv shown in FIG. 4C is shown in FIG. 4D. In FIGS. 4A to 4D, A and B denote picture contents, respectively.
Further, when the size of the original picture F as shown in FIG. 4A is reduced down to that Fv as shown in FIG. 4B or that Fr as shown in FIG. 4D, as far as the picture size enlarging and reducing frame buffer memory which can store picture data more than two frames is used for the prior art decoding apparatus, the picture size can be reduced easily.
However, when the line buffer memory is used as the picture size enlarging and reducing buffer memory, even if the original picture data as shown in FIG. 4A are written in the line buffer memory from the MPEG decoder 2 via the picture size enlarging and reducing processor 4 and after that the written data are read therefrom, it is apparent that a reduced picture as shown in FIG. 4D cannot be obtained. This is because in the case of the line buffer memory, since the picture data which can be stored in the line buffer memory are as small as those for only several scanning lines, it is impossible to read many picture data required to display the reduced picture at a display position determined in the picture frame F, from the line buffer memory. In other words, even if the line buffer memory is used as the picture size enlarging and reducing buffer memory, it is impossible to display picture of any desired size at any required position.